local key = KEYS[1]
local lockKey = KEYS[2]
local userId = ARGV[1]
local timestamp = ARGV[2]

-- 此处无需处理缓存加载，由应用层保证

-- 执行点赞/取消操作
local exists = redis.call('sismember', key, userId)
local result
if exists == 1 then
    redis.call('srem', key, userId)
    result = 0
else
    redis.call('sadd', key, userId)
    result = 1
end

-- 自动续期缓存
redis.call('expire', key, 604800) -- 7天过期

return result
